package com.ruoyi.logistic.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Date;
import java.sql.Timestamp;

/**
 * 奖罚分摊结算
 */
@Data
@Setter
@Getter
public class NetworkRewardApportion implements Serializable {

    private static final long serialVersionUID = 8452129664366753194L;
    /**
     * 主键
     */
    private Integer id;

    /**
     * 网点名称id
     */
    @Excel(name = "网点名称id")
    @ApiModelProperty("网点名称")
    private String networkNameId;

    /**
     * 结算时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结算时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("结算时间")
    private Date settleTime;

    /**
     * 记账时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记账时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("记账时间")
    private Date billTime;

    /**
     * 运单号
     */
    @Excel(name = "运单号")
    @ApiModelProperty("运单号")
    private String transportCode;

    /**
     * 奖罚类别
     */
    @Excel(name = "奖罚类别")
    @ApiModelProperty("奖罚类别")
    private String rewardType;

    /**
     * 总部收付类型
     */
    @Excel(name = "总部收付类型")
    @ApiModelProperty("总部收付类型")
    private String hqReceiptPayType;

    /**
     * 总部科目结算id
     */
    @Excel(name = "总部科目结算id")
    @ApiModelProperty("总部科目结算")
    private String hqSettleSubjectId;

    /**
     * 总部结算金额
     */
    @Excel(name = "总部结算金额")
    @ApiModelProperty("总部结算金额")
    private BigDecimal hqSettleMoney;

    /**
     * 揽件业务员
     */
    @Excel(name = "揽件业务员")
    @ApiModelProperty("揽件业务员")
    private String pickupSalesman;

    /**
     * 派件业务员
     */
    @Excel(name = "派件业务员")
    @ApiModelProperty("派件业务员")
    private String deliverySalesman;

    /**
     * 摘要
     */
    @Excel(name = "摘要")
    @ApiModelProperty("摘要")
    private String summary;

    /**
     * 进出港标志
     */
    @Excel(name = "进出港标志")
    @ApiModelProperty("进出港标志")
    private String entryExitSign;

    /**
     * 网点收付类型
     */
    @Excel(name = "网点收付类型")
    @ApiModelProperty("网点收付类型")
    private String nwReceiptPayType;

    /**
     * 结算类型
     */
    @Excel(name = "结算类型")
    @ApiModelProperty("结算类型")
    private String settleType;

    /**
     * 结算对象
     */
    @Excel(name = "结算对象")
    @ApiModelProperty("结算对象")
    private String settleObject;

    /**
     * 客户来源
     */
    @Excel(name = "客户来源id")
    @ApiModelProperty("客户来源")
    private Integer clientSourceId;

    /**
     * 结算金额
     */
    @Excel(name = "结算金额")
    @ApiModelProperty("结算金额")
    private BigDecimal settleMoney;

    /**
     * 预付款已扣金额
     */
    @Excel(name = "预付款已扣金额")
    @ApiModelProperty("预付款已扣金额")
    private BigDecimal prePayTakeOutMoney;

    /**
     * 是否核实
     */
    @Excel(name = "是否核实")
    @ApiModelProperty("是否核实")
    private String isVerify;

    /**
     * 有效状态
     */
    @Excel(name = "有效状态")
    @ApiModelProperty("有效状态")
    private String effectiveStatus;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Timestamp createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Timestamp updateTime;

//    private NetworkHqSettleSubject hqSettleSubject;
//    private ClientSource clientSource;


}
